package com.zheng.hr.rpc.api;

import com.zheng.hr.dao.model.HrPersonalExperience;
import com.zheng.hr.dao.model.HrPersonalRecords;
import com.zheng.common.base.BaseService;
import com.zheng.oa.common.exception.OaException;
import com.zheng.upms.dao.model.UpmsUser;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * hr_personal_records 人事档案信息 服务类
 * </p>
 *
 * @author likun
 * @since 2018-01-08
 */
public interface HrPersonalRecordsService extends BaseService<HrPersonalRecords> {
    boolean insertPersonalRecords(HrPersonalRecords personalRecords, List<HrPersonalExperience> experiences) throws OaException;

    boolean updatePersonalRecords(HrPersonalRecords personalRecords, List<HrPersonalExperience> experiences) throws OaException;

    List<Map<String, Object>> selectPersonalRecordsPage(HrPersonalRecords personalRecords);

    Integer selectPersonalRecordsCount(HrPersonalRecords personalRecords);

    List<Map<String, Object>> selectPersonalRecordsMaps(HrPersonalRecords personalRecords);

    //将字典内容注入到搜索出的map中
    List<Map<String, Object>> personalRecordsMapsTransformation(List<Map<String, Object>> maps);

    //查询所有用户的名称信息
    List<Map<String, Object>> selectAllUsersName();

    //根据userId查询用户的个人信息
    Map<String, Object> getPersonalRecordsInfo(Integer userId);

    //将upmsUser和personalRecords批量添加
    boolean insertUserList(List<UpmsUser> users);
}
